#pragma once
#include "Personal.h"

enum FlagPermision 
{
	admin			 =   1,
	managerAccount	 =   2,
	managerProduct	 =   4,
	operatorStaff	 =   8,
	checkPoint		 =  16,
	calculateSalary	 =  32,
	inputProduct	 =  64,
	viewReport		 = 128
};

class CStaff : public CPersonal
{
public:
	
	void setPermisson(int nPermission);
	int getPermisson();

	void setProvisionally(CString sProvisionally);
	CString getProvisionally();

	void setIdCard(CString sIdCard);
	CString getIdCard();

	void setPosition(CString sPosition);
	CString getPosition();

	void setStore(CString sShop);
	CString getStore();


	void setStatus(int nStatus);
	int getStatus();

	void setSalary(CString sSalary);
	CString getSalary();
	void setCode(CString sCode);
	CString getCode();

	void setTotalTime(CString sTime);
	CString getTotalTime();

	bool isAdmin();
	bool isManagerAccount();
	bool isManagerProduct();
	bool isManagerReport();
	bool hasIputProduct();
	bool isCheckPoint();
	bool isCalculateSalary();

	CStaff* clone();

private:
	CString m_sCode;
	CString m_sPosition;
	CString m_sProvisionally;//Tam tru
	CString m_sIdCard;
	int m_nPermission;
	CString m_sStoreCode;
	int m_nStatus;
	CString m_sSalary;
	CString m_sTotalTime;
};